'''
    用于自定义转换器
'''


class UsernameConverter(object):
    # 指定匹配的正则表达式
    regex = '[a-zA-Z0-9_-]{5,20}'

    def to_python(self,value):
        # 参数value就是路径提取的手机号
        # 把路径提取的字符串参数强转为指定类型传递到视图中
        # 返回值就是转化后的结果
        return int(value)

    def to_url(self,value):
        # 作用于路由反解析
        return str(value)

class MobileConverter:
    """自定义路由转换器去匹配手机号"""
    # 定义匹配手机号的正则表达式
    regex = '1[3-9]\d{9}'

    def to_python(self, value):
        # to_python：将匹配结果传递到视图内部时使用
        return str(value)

    def to_url(self, value):
        # to_url：将匹配结果用于反向解析传值时使用
        return str(value)